<!DOCTYPE html>
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">
  <meta name="description" content="刘清政">
  <meta name="keyword" content="hexo-theme">
  
    <link rel="shortcut icon" href="/css/images/logo.png">
  
  <title>
    
      Justin-刘清政的博客
    
  </title>
  <link href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
  <link href="//cdnjs.cloudflare.com/ajax/libs/nprogress/0.2.0/nprogress.min.css" rel="stylesheet">
  <link href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/tomorrow.min.css" rel="stylesheet">
  
<link rel="stylesheet" href="/css/style.css">

  
    
<link rel="stylesheet" href="/css/plugins/gitment.css">

  
  <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <script src="//cdnjs.cloudflare.com/ajax/libs/geopattern/1.2.3/js/geopattern.min.js"></script>
  <script src="//cdnjs.cloudflare.com/ajax/libs/nprogress/0.2.0/nprogress.min.js"></script>
  
    
<script src="/js/qrious.js"></script>

  
  
    
<script src="/js/gitment.js"></script>

  
  

  
<meta name="generator" content="Hexo 4.2.0"></head>
<div class="wechat-share">
  <img src="/css/images/logo.png" />
</div>

  <body>
    <header class="header fixed-header">
  <div class="header-container">
    <a class="home-link" href="/">
      <div class="logo"></div>
      <span>Justin-刘清政的博客</span>
    </a>
    <ul class="right-list">
      
        <li class="list-item">
          
            <a href="/" class="item-link active">主页</a>
          
        </li>
      
        <li class="list-item">
          
            <a href="/tags/" class="item-link">标签</a>
          
        </li>
      
        <li class="list-item">
          
            <a href="/archives/" class="item-link">归档</a>
          
        </li>
      
        <li class="list-item">
          
            <a href="/about/" class="item-link">关于我</a>
          
        </li>
      
    </ul>
    <div class="menu">
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </div>
    <div class="menu-mask">
      <ul class="menu-list">
        
          <li class="menu-item">
            
              <a href="/" class="menu-link mobile-active">主页</a>
            
          </li>
        
          <li class="menu-item">
            
              <a href="/tags/" class="menu-link">标签</a>
            
          </li>
        
          <li class="menu-item">
            
              <a href="/archives/" class="menu-link">归档</a>
            
          </li>
        
          <li class="menu-item">
            
              <a href="/about/" class="menu-link">关于我</a>
            
          </li>
        
      </ul>
    </div>
  </div>
</header>

    <main class="app-body">
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/7-%E7%9F%AD%E4%BF%A1%E6%B3%A8%E5%86%8C%E6%8E%A5%E5%8F%A3/">python/路飞项目/3-登录注册/7-短信注册接口</a>
      </h2>
      <p class="article-date">2020年3月2日</p>
      
      <div class="article-summary">
        
          后台urls.py1router.register('register', views.RegisterViewSet, 'register')

serializers.py1234567891011121314151617181920212223242526272829303132333 ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/7-%E7%9F%AD%E4%BF%A1%E6%B3%A8%E5%86%8C%E6%8E%A5%E5%8F%A3/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/6-%E7%9F%AD%E4%BF%A1%E7%99%BB%E5%BD%95%E6%8E%A5%E5%8F%A3/">python/路飞项目/3-登录注册/6-短信登录接口</a>
      </h2>
      <p class="article-date">2020年3月2日</p>
      
      <div class="article-summary">
        
          后台urls.py1path('mobile/login/', views.MobileLoginViewSet.as_view(&#123;'post': 'login'&#125;)),

serializers.py12345678910111213141516171819202122 ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/6-%E7%9F%AD%E4%BF%A1%E7%99%BB%E5%BD%95%E6%8E%A5%E5%8F%A3/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/2-%E5%A4%9A%E6%96%B9%E5%BC%8F%E7%99%BB%E5%BD%95/">python/路飞项目/3-登录注册/2-多方式登录</a>
      </h2>
      <p class="article-date">2020年3月2日</p>
      
      <div class="article-summary">
        
          后台插件1&gt;: pip install djangorestframework-jwt

urls.py1path('login/', views.LoginViewSet.as_view(&#123;'post': 'login'&#125;)),

dev.py1234import ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/2-%E5%A4%9A%E6%96%B9%E5%BC%8F%E7%99%BB%E5%BD%95/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/5-%E7%9F%AD%E4%BF%A1%E9%AA%8C%E8%AF%81%E7%A0%81%E6%8E%A5%E5%8F%A3/">python/路飞项目/3-登录注册/5-短信验证码接口</a>
      </h2>
      <p class="article-date">2020年3月2日</p>
      
      <div class="article-summary">
        
          后台urls.py1path('sms/', views.SMSViewSet.as_view(&#123;'get': 'send'&#125;)),

throttles.py123456789101112131415161718192021from rest_framework.thr ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/5-%E7%9F%AD%E4%BF%A1%E9%AA%8C%E8%AF%81%E7%A0%81%E6%8E%A5%E5%8F%A3/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/4-%E8%85%BE%E8%AE%AF%E4%BA%91%E7%9F%AD%E4%BF%A1%E5%BC%80%E5%8F%91/">python/路飞项目/3-登录注册/4-腾讯云短信开发</a>
      </h2>
      <p class="article-date">2020年2月29日</p>
      
      <div class="article-summary">
        
          腾讯云短信开发短信服务应用申请12345""" 准备工作1）创建短信应用 - 应用管理2）申请短信签名 - 国内短信 &gt; 签名管理3）申请短信模块 - 国内短信 &gt; 正文模板管理"""



python中开发腾讯云短信服务123456"""1）API文档，接口的使用说吧2）SD ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/4-%E8%85%BE%E8%AE%AF%E4%BA%91%E7%9F%AD%E4%BF%A1%E5%BC%80%E5%8F%91/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/3-%E6%89%8B%E6%9C%BA%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E9%AA%8C%E8%AF%81%E6%8E%A5%E5%8F%A3/">python/路飞项目/3-登录注册/3-手机是否存在验证接口</a>
      </h2>
      <p class="article-date">2020年2月29日</p>
      
      <div class="article-summary">
        
          后台urls.py1path('mobile/', views.MobileViewSet.as_view(&#123;'post': 'check'&#125;)),

views.py1234567891011121314# 手机是否存在接口import reclass MobileVi ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/3-%E6%89%8B%E6%9C%BA%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E9%AA%8C%E8%AF%81%E6%8E%A5%E5%8F%A3/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/1-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C%E9%A1%B5%E9%9D%A2/">python/路飞项目/3-登录注册/1-登录注册页面</a>
      </h2>
      <p class="article-date">2020年2月29日</p>
      
      <div class="article-summary">
        
          前提：基于element-ui环境模态登录组件123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/3-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C/1-%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C%E9%A1%B5%E9%9D%A2/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/2-git%E7%AC%94%E8%AE%B0/1-git/">python/路飞项目/2-git笔记/1-git</a>
      </h2>
      <p class="article-date">2020年2月29日</p>
      
      <div class="article-summary">
        
          版本控制器12345678910"""完成 协同开发 项目，帮助程序员整合代码	i）帮助开发者合并开发的代码	ii）如果出现冲突代码的合并，会提示后提交合并代码的开发者，让其解决冲突软件：SVN 、 GIT（都是同一个人的个人项目）	github、gitee（两个采用git版本控制器管理代码 ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/2-git%E7%AC%94%E8%AE%B0/1-git/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/1-%E9%A1%B9%E7%9B%AE%E5%9F%BA%E7%A1%80/9-luffy%E5%89%8D%E5%8F%B0%E4%B8%BB%E9%A1%B5/">python/路飞项目/1-项目基础/9-luffy前台主页</a>
      </h2>
      <p class="article-date">2020年2月27日</p>
      
      <div class="article-summary">
        
          前端主页图片准备将提供的资料中的图片移植到项目的img文件夹下
页头组件：components/Header.vue1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484 ...
        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/1-%E9%A1%B9%E7%9B%AE%E5%9F%BA%E7%A1%80/9-luffy%E5%89%8D%E5%8F%B0%E4%B8%BB%E9%A1%B5/">详情...</a>
    </article>
  
    <article class="article-card">
      <h2 class="article-head">
        <a href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/1-%E9%A1%B9%E7%9B%AE%E5%9F%BA%E7%A1%80/14-%E6%B5%8F%E8%A7%88%E5%99%A8%E5%B1%8F%E5%B9%95%E7%BC%A9%E6%94%BEbug%E4%BF%AE%E5%A4%8D/">python/路飞项目/1-项目基础/14-浏览器屏幕缩放bug修复</a>
      </h2>
      <p class="article-date">2020年2月27日</p>
      
      <div class="article-summary">
        
          问题：浏览器缩放时，轮播图显示不全，滚动水平滚动条，发现图片缺失解决：隐藏水平滚动条，页面都只提供垂直滚动条的需求global.css1234/* 水平超出部分默认隐藏 */#app &#123;    overflow: hidden;&#125;


        
      </div>
      <a class="more" href="/python/%E8%B7%AF%E9%A3%9E%E9%A1%B9%E7%9B%AE/1-%E9%A1%B9%E7%9B%AE%E5%9F%BA%E7%A1%80/14-%E6%B5%8F%E8%A7%88%E5%99%A8%E5%B1%8F%E5%B9%95%E7%BC%A9%E6%94%BEbug%E4%BF%AE%E5%A4%8D/">详情...</a>
    </article>
  

  
    <div class="guide-pager">
  
    <a href="/page/28/"><span class="page-arrow">← </span>Prev</a>
  
  
    <a href="/page/30/">Next<span class="page-arrow"> →</span></a>
  
</div>
  
</main>


    <div class="scroll-top">
  <span class="arrow-icon"></span>
</div>
    <footer class="app-footer">
<!-- 不蒜子统计 -->
<span id="busuanzi_container_site_pv">
     本站总访问量<span id="busuanzi_value_site_pv"></span>次
</span>
<span class="post-meta-divider">|</span>
<span id="busuanzi_container_site_uv" style='display:none'>
     本站访客数<span id="busuanzi_value_site_uv"></span>人
</span>
<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>



  <p class="copyright">
    &copy; 2021 | Proudly powered by <a href="https://www.cnblogs.com/xiaoyuanqujing" target="_blank">小猿取经</a>
    <br>
    Theme by <a href="https://www.cnblogs.com/xiaoyuanqujing" target="_blank" rel="noopener">小猿取经</a>
  </p>
</footer>

<script>
  function async(u, c) {
    var d = document, t = 'script',
      o = d.createElement(t),
      s = d.getElementsByTagName(t)[0];
    o.src = u;
    if (c) { o.addEventListener('load', function (e) { c(null, e); }, false); }
    s.parentNode.insertBefore(o, s);
  }
</script>
<script>
  async("//cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js", function(){
    FastClick.attach(document.body);
  })
</script>

<script>
  var hasLine = 'true';
  async("//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js", function(){
    $('figure pre').each(function(i, block) {
      var figure = $(this).parents('figure');
      if (hasLine === 'false') {
        figure.find('.gutter').hide();
      }
      var lang = figure.attr('class').split(' ')[1] || 'code';
      var codeHtml = $(this).html();
      var codeTag = document.createElement('code');
      codeTag.className = lang;
      codeTag.innerHTML = codeHtml;
      $(this).attr('class', '').empty().html(codeTag);
      figure.attr('data-lang', lang.toUpperCase());
      hljs.highlightBlock(block);
    });
  })
</script>





<!-- Baidu Tongji -->

<script>
    var _baId = 'c5fd96eee1193585be191f318c3fa725';
    // Originial
    var _hmt = _hmt || [];
    (function() {
      var hm = document.createElement("script");
      hm.src = "//hm.baidu.com/hm.js?" + _baId;
      var s = document.getElementsByTagName("script")[0];
      s.parentNode.insertBefore(hm, s);
    })();
</script>


<script src="/js/script.js"></script>


<script src="/js/search.js"></script>


<script src="/js/load.js"></script>



  <span class="local-search local-search-google local-search-plugin" style="right: 50px;top: 70px;;position:absolute;z-index:2;">
      <input type="search" placeholder="站内搜索" id="local-search-input" class="local-search-input-cls" style="">
      <div id="local-search-result" class="local-search-result-cls"></div>
  </span>


  </body>
</html>